﻿using B.S.BasicData.Domain.Entities.Leave;
using B.S.BasicData.ErrorCode;
using MediatR;

namespace B.S.BasicData.API.Write.Application.Command.Leave
{
    /// <summary>
    /// 修改申请信息请求命令
    /// </summary>
    public class UpdateLeaveCommand:IRequest<ApiResult<int>>
    {
        /// <summary>
        /// 申请Id
        /// </summary>
        public int id {  get; set; }
        /// <summary>
        /// 申请人
        /// </summary>
        public string applicationName { get; set; }
        /// <summary>
        /// 部门Id
        /// </summary>
        public int departmentId { get; set; }
        /// <summary>
        /// 请假类别Id
        /// </summary>
        public int leaveTypeId { get; set; }
        /// <summary>
        /// 请假开始时间
        /// </summary>
        public DateTime startTime { get; set; }
        /// <summary>
        /// 请假结束时间
        /// </summary>
        public DateTime endTime { get; set; }
        /// <summary>
        /// 共计多少时间
        /// </summary>
        public int totalTime { get; set; }
        /// <summary>
        /// 报道时间
        /// </summary>
        public DateTime reportTime { get; set; }
        /// <summary>
        /// 请假事由
        /// </summary>
        public string reason { get; set; }
        /// <summary>
        /// 部门领导
        /// </summary>
        public string depleaders { get; set; }
        /// <summary>
        /// 申请状态
        /// </summary>
        public LeaveStateEnum state { get; set; }
        /// <summary>
        /// 审核原因
        /// </summary>
        public string? leaveReview { get; set; }
    }
}
